
HackRover: Cyber Security in HackRover: Cyber Security in
MotionMotion
Josaiah ClarkJosaiah Clark
josmechanical@gmail.comjosmechanical@gmail.com
Gary NguyenGary Nguyen
garynguyen158@gmail.comgarynguyen158@gmail.com
Mat PearceMat Pearce
carpetmat@gmail.comcarpetmat@gmail.com
Dalton WiebeDalton Wiebe
wiebedalton@gmail.comwiebedalton@gmail.com
Chase SuttonChase Sutton
chasemsutton1611@gmail.comchasemsutton1611@gmail.com
Special thanks to: Professor Mark Kochanski, Geoffrey Powell-Isom, Silver Lucoris, Victor Suciu, Justin Heinzig, Mohammad Dabbagh, Anwar Aminnudin, Kassim Shaibi, Yang Zhou, Taylor Johnston, Connor Lauerman, Matthew Lauerman, Long Ly, Daniel ZhugeSpecial thanks to: Professor Mark Kochanski, Geoffrey Powell-Isom, Silver Lucoris, Victor Suciu, Justin Heinzig, Mohammad Dabbagh, Anwar Aminnudin, Kassim Shaibi, Yang Zhou, Taylor Johnston, Connor Lauerman, Matthew Lauerman, Long Ly, Daniel Zhuge
Why
Solution
Data Analysis & Testing
Results
All technology-reliant companies are interested in leveraging big data to make better
decisions about products and services. The way that industry is supporting the shift
toward big data is by collecting diagnostics and other info in real time from sensors.
This trend toward leveraging the Internet of Things is what many are calling “Industry 4.0.”
The aim of this capstone was to develop a model for exploring ethical hacking of self-driving
cars and autonomous manufacturing equipment. This model would use technology similar
to both, mainly through the use of embedded systems and sensors.
Client: Pierre Mourad, PhD Client: Pierre Mourad, PhD
Advisor: Imen Elloumi-Hannachi, PhDAdvisor: Imen Elloumi-Hannachi, PhD
A mecanum wheel-
based drivetrain
was designed to
better suit the
mobility needs of
an indoor rover.
The system architecture for a semi-autonomous rover was laid out in a flowchart.
A printed circuit board was designed in collaboration
with an Electrical Engineering capstone in order to
enhance the integrity and repeatibility of our rover’s
electrical system.
Root cause analysis
was used to find
the reason for
permanent marring
and bending in all of
the drivetrain’s 6mm
2101 stainless steel
shafts. 8mm carbon
steel keyed shafts
were used in the
newest iteration for easy maintenance
and greater dynamic loading capacity.
To facilitate remote software testing
of the arm, a simplified model was
made in SolidWorks with accurate link
dimensions and weight distribution.
Motor power wires were burnt during a Winter
demonstration. Investigation revealed that drivetrain
motors were exceeding allowable current draw of
their power wires while the rovers were driving on
carpet. Wire sizes were increased from 22AWG to
16AWG.
Client Virtual Machine
User Interface
OUTPUT
INPUT
Enable/Disable Xbox Controller
Enable/Disable Xbox Controller
Enable/Disable Arm...
Enable/Disable Arm...
Drivetrain Movement...
Operations Tab
Mouse-Click Arm...
Mouse-Click Drivetrain...
Freeze all rover actions...
Xbox control...
Arm camera live feed...
RealSense RGB live feed
RealSense RGB Live Feed
Arm Movement Commands
RealSense Live RGB Feed
Arm Movement Mouse...
Drivetrain movement...
Enable/Disable...
Autonomy Tab
3D Map display
Distance/Angle Navig...
Live RealSense IR fe...
Autonomus mode toggl...
Picture Pallet Tab
Picture Album
Distance/Angle Commands
Move rover __ feet at __ degrees
Emergency Shutdown
Emergency Shutdown
Enable/Disable...
Emergency Shutdown
3D Map
Enable/Disable autonomous navigation
RealSense IR Live Feed
Enable/Disable...
Camera Screenshots
IMU Data
Filtered IMU Data
Odometry Data
Filtered Odometry Data
Motor movement commands
Motor movement commands
ROS Master Node
Raspberry Pi
Authorized User
Network
Hacker
xbox event commands,...
Camera feed,...
Hacker Using VM
Network Adapter
Client Virtual Machine
User Interface
Virtual Machines
Hacking VM
Arm Movement Commands
Jetson Nano
LattePanda
ROS Motor...
Motor Commands...
IBT-2 Motor Controller
Robotic Arm
Intel Realsense D435i
USB Camera
Camera ROS Node
Motor Commands...
Ultrasonic Sensor
Array
Status Signals
Motor Commands...
Encoder Data
Status Signals
Wheel Odometry Data
ROS Sonar...
Trig
Echo...
Distance Data...
Status Signals
Magnetometer &
Accelerometer
Firewall
NAT
Magnetic Orientation...
ROS .bag File...
Xbox Controller
Wheel Odometry Data...
SSH...
Camera Feed Feed Requests...
Camera feed,...
Camera feed,...
xbox event commands,...
xbox event commands...
OUTPUT
INPUT
OUTPUT
INPUT
OUTPUT
INPUT
Encoder Translation...
Magnetometer/
Accelerometer
ROS Node
Firewall
Embedded LAN
Xbox Input / Output...
Legend
Completely New Code
Reconfigured Code
COTS Code
Arm Position
IMU Fusion/Filtering...
Motor Position...
Accelerometer/...
robot_localization...
Visual Odometry...
3D Map
Wheel Odometry Data
Motor Encoder
realsense2_camera
node
Raspberry Pi Zero W
Xbox Controller...
Xbox Movement Commands
Xbox movement commands
Joystick Events...
Arm movement commands
Arm Movement...
Camera Feed
Magnetic Orientation...
Enable/Disable Xbox Controller
Enable/Disable Arm Camera Live Feed
RealSense RGB Live Feed
Arm Movement Mouse click events
Drivetrain movement mouse click...
3D Map
Enable/Disable autonomous navigation
RealSense IR Live Feed
Emergency Shutdown
Arm ROS Node
Wheel Odometry Data...
Viewer does not support full SVG 1.1
The project sparked enough interest to start
a HackRover club, the purpose of which is the
same as this capstone project: to promote cyber
awareness in IoT/IIoT. For more information, visit
hackrover.com or email hackrover@gmail.com.
With the new frame built, the rover is ready
for integration of electrical, mechanical, and
software elements.
Conclusion & Future Work
The project still has not achieved autonomy, which is crucial for our hacking functions. In the next
iteration of the project, the following topics should be explored:
1. ROS drivetrain control development
2. Simultaneous Localization and Mapping (SLAM)
3. One-shot learning for arm articulation tasks
We have implemented drivetrain and
arm controls with an Xbox controller.
Follow our Github page to see the
codebase and new feature projects: